LVA Datenbanksysteme (LU 1.0 181.129)
Wintersemster 2005
Allgemeines
Lehrziel des 2. Beispiels:
- Einsatz von Clustern und Indizes
- Verwendung von PL/SQL
Gehen Sie von der von Ihnen im 1. Beispiel erstellten Datenbank aus.
- Lesen Sie das Kapitel
"PL/SQL"
in den Übungsunterlagen.
- Ergänzen Sie Ihre Daten damit die Queries sinnvoll
getestet
werden können, d.h. unter anderem, dass jede Query auch ein
Ergebnis liefern muss.
- Die bei den Angaben kursiv
gesetzten Daten dürfen von Ihnen geändert (d.h. an Ihren
Datenbestand angepasst) werden.
- Organisieren Sie die abgeleiteten Relationen in Cluster und legen
Sie eventuell noch Indices an. Beziehen Sie sich dabei nur auf die
angegebenen Abfragen und versuchen Sie deren Effizienz zu
steigern.
- Definieren Sie die ermittelten Cluster und Indizes mit den
SQL-Statements CREATE CLUSTER beziehungsweise CREATE INDEX
und die Relationen mit dem SQL-Statement CREATE TABLE unter
Beachtung
der jeweiligen Constraints (NOT NULL, PRIMARY KEY, FOREIGN
KEY). Lesen Sie dazu zuerst den Teil über
interaktives SQL in den Arbeitsunterlagen
und studieren Sie insbesondere die Definitionen der
benötigten SQL-Kommandos. Verwenden Sie dabei nur die Datentypen INTEGER,
VARCHAR2 und DATE. Tragen Sie in jede Relation mit INSERT
mindestens 6 Tupel ein. Versuchen Sie im Hinblick auf die zu
formulierenden Queries möglichst aussagekräftige Testdaten zu
finden.
- Geben Sie alle Queries mit SELECT-Statements
aus. Anschließend geben Sie sämtliche Datenbankobjekte, die
Sie
erstellt haben, wieder frei. Dazu verwenden Sie DROP CLUSTER,
DROP INDEX, DROP TABLE und DROP VIEW.
- Für die Abgabe erstellen Sie ein Commandfile, das
sämtliche für
die Lösung der Aufgabenstellung benötigten SQL-Statements
enthält.
Geben Sie beim Abgabegespräch das EER-Diagramm (lesbar
handschriftlich
oder gedruckt), den Ausdruck des Commandfiles und den Ausdruck des
Ergebnisfiles (spool!) beim Tutor ab. Dieser wird im Rahmen des
Abgabegesprächs Ihre Lösung kontrollieren und, wenn alles
richtig ist,
die Abgabe bestätigen. Beachten Sie bitte, dass eine Abgabe ohne
Ausdruck nicht möglich ist. Nach der Abgabe verbleiben das
EER und der Ausdruck des Commandfiles bzw. des Ergebnisfiles beim
Tutor.
Die Beispiele basieren auf denselben Relationen wie Ihr vorheriges
Beispiel (Beispiel 1); auch Ihre Beispieldaten sollten für
dieses
Beispiel in Ihrer Datenbank vorhanden sein. Evtl. wird es notwendig,
passende Testdaten hinzuzufügen, um aussagekräftige Resultate
zu
erhalten.
Die Aktualisierungen und
Ergänzungen einer Relation stellen Transaktionen dar. Treffen Sie
entsprechende Vorkehrungen, um die Atomizität der Transaktionen zu
gewährleisten.
Fügen Sie in Ihre Beispiele eine einfache Fehlerbehandlung
(Ausgabe
des Fehlers und angemessene Behandlung der Transaktion) ein.
Achtung:
Studenten, die Ihr 2. Beispiel bis zum Abgabeschluss nicht mit 'OK'
abschliessen, also noch den Status 'V' haben, erhalten zwar nach den
Weihnachtsferien Gelegenheit zu einer weiteren Abgabe, müssen als
Fleissaufgabe weitere Probleme zusätzlich lösen!
Die Angaben
Bitte beachten Sie, dass Ihre Lösungen nur dann akzeptiert werden
können,
wenn Sie auch das richtige Beispiel gelöst haben.
Falls Sie
vergessen haben, welcher Gruppe Sie zugeteilt sind, so können Sie
sich Ihre Gruppe
zuschicken lassen.
Last Change: 16. 11. 2005